home *** CD-ROM | disk | FTP | other *** search
/ Aminet 28 / Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso / Aminet / comm / cnet / CNMCode.lha / CNetMoreseCode next >
Encoding:
Text File  |  1998-10-01  |  4.5 KB  |  73 lines

  1. /**************************************************************************\
  2.    $VER: CNet Morese Code, v1.00 (01-Oct-98) by Star Gazer of Star Streams!
  3.       Note: Most of the code here is from Dotoran's Handle Bars program!
  4. \**************************************************************************/
  5. options results;signal on SYNTAX;signal on ERROR;signal on IOERR
  6. a=sourceline(2);parse var a . ", "ver" ("vdate")" .;a=random(,,time("s"))
  7. tr=transmit;se=sendstring;gc=getchar;gu=getuser;gs=getscratch;mg=maygetchar;qu=query;sf=sendfile
  8. a="rexxsupport.library";if ~show("l",a) then if ~addlib(a,0,-30) then exit
  9. parse source . . fp .;df=left(fp,max(lastpos('/',fp),lastpos(':',fp)))
  10. changewhere "Morese Code";oldwh=result;gu 1;handle=upper(result)
  11.  
  12. CODE:
  13. ma='.-'      /* Letter A */;mb='-...'    /* Letter B */;mc='-.-.'    /* Letter C */
  14. md='-..'     /* Letter D */;me='.'       /* Letter E */;mf='..-.'    /* Letter F */
  15. mg='--.'     /* Letter G */;mh='....'    /* Letter H */;mi='..'      /* Letter I */
  16. mj='.---'    /* Letter J */;mk='-.-'     /* Letter K */;ml='.-..'    /* Letter L */
  17. mm='--'      /* Letter M */;mn='-.'      /* Letter N */;mo='---'     /* Letter O */
  18. mp='.--.'    /* Letter P */;mq='--.-'    /* Letter Q */;mr='.-.'     /* Letter R */
  19. ms='...'     /* Letter S */;mt='-'       /* Letter T */;mu='..-'     /* Letter U */
  20. mv='...-'    /* Letter V */;mw='.--'     /* Letter W */;mx='-..-'    /* Letter X */
  21. my='-.--'    /* Letter Y */;mz='--..'    /* Letter Z */
  22. m1='.----'   /* Number 1 */;m2='..---'   /* Number 2 */;m3='...--'   /* Number 3 */
  23. m4='....-'   /* Number 4 */;m5='.....'   /* Number 5 */;m6='-....'   /* Number 6 */
  24. m7='--...'   /* Number 7 */;m8='---..'   /* Number 8 */;m9='----.'   /* Number 9 */
  25. m0='-----'   /* Number 0 */
  26. mp1='.-.-.-' /* Full-stop (period)     */;mp2='--..--' /* Comma                  */
  27. mp3='---...' /* Colon                  */;mp4='..--..' /* Question mark (query)  */
  28. mp5='.----.' /* Apostrophe             */;mp6='-....-' /* Hyphen                 */
  29. mp7='-..-.'  /* Fraction bar           */;mp8='-.--.-' /* Brackets (parentheses) */
  30. mp9='.-..-.' /* Quotation marks        */;mp0=' '      /* Space/Pause            */
  31.  
  32. START:;tr 'f1cfEncoding ca--> ce'handle'n1'
  33. do i=1 to length(handle);l=substr(handle,i,1)
  34. if l="A" then l1=ma;if l="B" then l1=mb;if l="C" then l1=mc;if l="D" then l1=md
  35. if l="E" then l1=me;if l="F" then l1=mf;if l="G" then l1=mg;if l="H" then l1=mh
  36. if l="I" then l1=mi;if l="J" then l1=mj;if l="K" then l1=mk;if l="L" then l1=ml
  37. if l="M" then l1=mm;if l="N" then l1=mn;if l="O" then l1=mo;if l="P" then l1=mp
  38. if l="Q" then l1=mq;if l="R" then l1=mr;if l="S" then l1=ms;if l="T" then l1=mt
  39. if l="U" then l1=mu;if l="V" then l1=mv;if l="W" then l1=mw;if l="X" then l1=mx
  40. if l="Y" then l1=my;if l="Z" then l1=mz
  41. if l="1" then l1=m1;if l="2" then l1=m2;if l="3" then l1=m3;if l="4" then l1=m4
  42. if l="5" then l1=m5;if l="6" then l1=m6;if l="7" then l1=m7;if l="8" then l1=m8
  43. if l="9" then l1=m9;if l="0" then l1=m0
  44. if l="." then l1=mp1;if l="," then l1=mp2;if l=":" then l1=mp3;if l="?" then l1=mp4
  45. if l="'" then l1=mp5;if l="-" then l1=mp6;if l="/" then l1=mp7;if l="(" then l1=mp8
  46. if l="{" then l1=mp8;if l="[" then l1=mp8;if l="}" then l1=mp8;if l="]" then l1=mp8
  47. if l=")" then l1=mp8;if l='"' then l1=mp9;if l=" " then l1=mp0
  48. d=datatype(l,"u");a=c2d(L)-64;b=a;if b>13 then b=b-13;se 'cb'l1' '
  49. if d=0 then do;a=0;b=0;end;end i;tr 'n1'
  50. se "ce(c9Hce)cfandleca, ce(c9Tce)cfextca, cfor cc[cdQcc]cfuitca:cf ";gc;a=result;call CHECK
  51. if a="Q" | index("HT",a)=0 then do;tr "Quit";call end;end
  52. if a="H" then do;tr "Handlen1";signal NEWHANDLE;end
  53. se "Text Stringn2cfEnter Text Stringca:cei529 16}";gu 70
  54. handle=result;signal START
  55.  
  56. NEWHANDLE:;se "cfEnter caID cfNumberca:cei192 3}";gu 70;a=result
  57. findaccount a;st=result;if st=0 then do
  58. tr "n1cfThat is an Invalid caID#!";call newhandle;end
  59. loadscratch st;gs 1;handle=upper(result);savescratch (-st);signal START
  60.  
  61. END:;changewhere oldwh;bufferflush;exit
  62.  
  63. CHECK:;if ARG() & ARG(1)~="###PANIC" then return ARG(1)
  64.   getcarrier;if result="TRUE" then if ARG() then return ARG(1);else return
  65.   logentry "Lost Carrier!!";bufferflush;exit
  66. SYNTAX:;ERROR:;IOERR:;e1="n1 Error: "rc" ("errortext(rc)")"
  67.   e2="  Line: "left(sigl,4)"File:";c="`"fp", "ver"'";e2=e2" "c;tr e1;tr e2
  68.   logentry e1;logentry e2;e=strip(translate(sourceline(sigl),"\{",""))
  69.   do while e~="";e3="Source: "left(e,37);tr e3;logentry e3;e=substr(e,38);end
  70.   bufferflush
  71. /**************************************************************************\
  72. \*************************************** Star Streams BBS (972)/938-7115 **/
  73.